package com.ssy.lingxi.product.api.model.request.commodity;

import com.ssy.lingxi.common.model.vo.PageVO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 商品查询
 *
 * @author jw.chen
 * @version 2.0.0
 * @date 2020/6/28
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class CommodityMroQueryRequest extends PageVO {



    /**
     * 商城id
     */
    @NotNull(message = "商城id不能为空")
    private Long shopId;

    /**
     * 模板id
     */
    @NotNull(message = "模板id不能为空")
    private Long templateId;

    /**
     * 商城类型：1.企业商城 2.积分商城 3.渠道商城 4.渠道自有商城 5.渠道积分商城
     */
    private Integer type;

    /**
     * 商城环境:1.web 2.H5 3.小程序 4.IOS 5.安卓
     */
    private Integer environment;

    /**
     * 商品ID
     */
    private Long productId;


    /**
     * 排除id
     */
    private List<Long> idNotList;

    /**
     * 包含id
     */
    private List<Long> idList;

    /**
     * 商品编号/商品名称
     */
    private String name;

    /**
     * 商品定价：1-现货价格, 2-价格需要询价, 3-积分兑换商品
     */
    private List<Integer> priceTypeList;

    /**
     * 属性
     */
    private List<CommodityAttributeMroRequest> commodityAttributeList;

    /**
     * 最小价格
     */
    private Double min;

    /**
     * 最小价格
     */
    private Double max;

    /**
     * 会员分类id
     */
    private Long customerCategoryId;

    /**
     * 会员分类名称
     */
    private String customerCategoryName;

    /**
     * 平台后台分类id
     */
    private Long categoryId;

    /**
     * 上级会员id
     */
    private List<Long> parentMemberIdList;

    /**
     * 会员id
     */
    private Long memberId;

    /**
     * 会员名称
     */
    private String memberName;

    /**
     * 会员角色id
     */
    private Long memberRoleId;

    /**
     * 会员角色名称
     */
    private String memberRoleName;

    /**
     * 品牌id
     */
    private Long brandId;

    /**
     * 品牌idList
     */
    private List<Long> brandIdList;

    /**
     * 品牌名称
     */
    private String brandName;

    /**
     * 审核状态集合: 1-待提交审核, 2-待审核, 3-审核不通过, 4-审核通过, 5-上架, 6-下架
     */
    private List<Integer> statusList;


    /**
     * 审核类型: 1-会员审核, 2-平台审核
     */
    private Integer checkType;

    /**
     * 登录用户id  (自营商城时必传)
     */
    private Long loginMemberId;

    /**
     * 登录用户角色id  (自营商城时必传)
     */
    private Long loginMemberRoleId;

    /**
     * 店铺Id
     */
    private Long storeId;

    /**
     * 店铺idList
     */
    private List<Long> storeIdList;

    /**
     * 店铺名称
     */
    private String storeName;

    /**
     * 上架时间筛选开始
     */
    private Long publishStartTime;

    /**
     * 上架时间筛选结束
     */
    private Long publishEndTime;
}
